package com.hyh.ad.common.core.text;

import java.lang.reflect.Field;

/**
 * 将对象里面的Long类型转换为String类型
 * @author hyh
 */
public class LongToStrConvert {
    /**
     * 将对象中的 Long 类型属性转换为字符串类型
     *
     * @param obj 要转换的对象
     * @return 转换后的对象，Long 类型属性被转换为字符串类型
     */
    public static <T> T convertLongToString(T obj) {
        try {
            Class<?> clazz = obj.getClass();
            Field[] fields = clazz.getDeclaredFields();
            for (Field field : fields) {
                if (field.getType() == Long.class || field.getType() == long.class) {
                    field.setAccessible(true);
                    Long longValue = (Long) field.get(obj);
                    if (longValue != null) {
                        field.set(obj, String.valueOf(longValue));
                    }
                }
            }
        } catch (IllegalAccessException e) {
            e.printStackTrace(); // 可根据需要处理异常
        }
        return obj;
    }
}
